package com.shangting.web.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.shangting.common.entity.ApartmentInfo;
import com.shangting.web.vo.apartment.ApartmentItemVo;
import com.shangting.web.vo.apartment.ApartmentQueryVo;

/**
 * @author liubo
 * @description 针对表【apartment_info(公寓信息表)】的数据库操作Mapper
 * @createDate 2023-07-24 15:48:00
 * @Entity com.atguigu.lease.model.ApartmentInfo
 */

// BaseMapper 接口的原理主要基于 MyBatis 的 Mapper 动态代理机制。
// 在运行时，MyBatis-Plus 会动态生成 BaseMapper 接口的实现类，并通过 Java 反射机制来调用相应的数据库操作方法。
// 在服务层或控制器层中注入 UserMapper，并调用其方法来实现数据库操作。
// 这些方法在实现时会自动生成对应的 SQL 语句，并利用 MyBatis 的 SQL 执行引擎来执行这些 SQL 语句，从而实现对数据库的 CRUD 操作。
public interface ApartmentInfoMapper extends BaseMapper<ApartmentInfo> {
    IPage<ApartmentItemVo> pageItem(Page<ApartmentItemVo> page, ApartmentQueryVo queryVo);
}